home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / prgtools / mint / mgr / sparcmgr / demo2.zoo / demo / ex / ovprintf.c < prev    next >
Encoding:
C/C++ Source or Header  |  1985-06-07  |  1.1 KB  |  50 lines

  1. /*
  2.  * Copyright (c) 1980 Regents of the University of California.
  3.  * All rights reserved.  The Berkeley software License Agreement
  4.  * specifies the terms and conditions for redistribution.
  5.  */
  6.  
  7. #ifndef lint
  8. static char *sccsid = "@(#)ovprintf.c    1.3 (Berkeley) 6/7/85";
  9. #endif not lint
  10.  
  11. /*
  12.  * This version of printf calls doprnt, and as such is not portable,
  13.  * since doprnt is written in pdp-11 assembly language.  (There is a
  14.  * vax doprnt which has the first 2 arguments reversed.  We don't use it.)
  15.  * This version is used because it is about 900 bytes smaller than the
  16.  * portable version, which is also included in case it is needed.
  17.  */
  18. #ifdef TRACE
  19. #include    <stdio.h>
  20. #undef putchar
  21. #endif
  22.  
  23. printf(fmt, args)
  24. char *fmt;
  25. {
  26.     _doprnt(fmt, &args, 0);
  27. }
  28.  
  29. _strout(string, count, adjust, file, fillch)
  30. register char *string;
  31. register count;
  32. int adjust;
  33. register struct _iobuf *file;
  34. {
  35.     while (adjust < 0) {
  36.         if (*string=='-' && fillch=='0') {
  37.             putchar(*string++);
  38.             count--;
  39.         }
  40.         putchar(fillch);
  41.         adjust++;
  42.     }
  43.     while (--count>=0)
  44.         putchar(*string++);
  45.     while (adjust) {
  46.         putchar(fillch);
  47.         adjust--;
  48.     }
  49. }
  50.